/**
  * class Controller
  * A controller is one of the ControlTypes and it includes all functions/attributes
  * needed in order to be linked/generated on a body part layer.
  */

var Controller = function ()
{
    /**
     * The PropertyGroup effect reference for this controller. Null if no controller is
     * needed.
     */
    var control = null;
    /**
     * The type of controller this is.
     */
    var type = null;

    return {
        /**
         * Defines the type of control that this Controller should be.
         * @param type The enumerated ControlTypes value that this control is to be defined as.
         */
        setType : function (t)
        {
            type = t;
        },

        /**
         * Returns the type of Controller this is.
         */
        getType : function ()
        {
            return type;
        }
    }
}